package com.quick.develop.form.service;


import com.quick.develop.framework.common.page.PageResult;
import com.quick.develop.framework.common.service.BaseService;
import com.quick.develop.form.entity.GenDynamicFormEntity;
import com.quick.develop.form.query.GenDynamicFormQuery;
import com.quick.develop.form.vo.FormConfigVO;
import com.quick.develop.form.vo.GenDynamicFormVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 动态表单
 *
 * @author 阿沐 babamu@126.com
 * @since 1.0.0 2023-09-24
 */
public interface GenDynamicFormService extends BaseService<GenDynamicFormEntity> {

    PageResult<GenDynamicFormVO> page(GenDynamicFormQuery query);

    void save(GenDynamicFormVO vo);

    void update(GenDynamicFormVO vo);

    void delete(List<Long> idList);

    Object getDynamicFormDetail(String id);

    FormConfigVO getDynamicForm(FormConfigVO formConfigVO);

    FormConfigVO getFormConfigByFormKey(String key);

    void dynamicExportExcel(GenDynamicFormQuery query);

    void dynamicImportExcel(MultipartFile file);

    void formCV(Integer formId);
}